package t.l;

import java.util.ArrayList;
import java.util.List;
import t.l.component.Person;

public class RuntimeData {
  private int m, k, runtimeK, n, animateInterval, currentCount;
  private List<Integer> personNumList = new ArrayList<>();
  private List<Integer> removedNumList = new ArrayList<>();

  public RuntimeData(int m, int k, int runtimeK, int n, int animateInterval, int currentCount,
      List<Person> personList, List<Person> removedList) {
    this.m = m;
    this.k = k;
    this.runtimeK = runtimeK;
    this.n = n;
    this.animateInterval = animateInterval;
    this.currentCount = currentCount;
    if (Util.notEmpty(personList)) {
      personList.forEach(person -> this.personNumList.add(person.getNum()));
    }
    if (Util.notEmpty(removedList)) {
      removedList.forEach(person -> this.removedNumList.add(person.getNum()));
    }
  }

  public int getM() {
    return m;
  }

  public int getK() {
    return k;
  }

  public int getRuntimeK() {
    return runtimeK;
  }

  public int getN() {
    return n;
  }

  public int getAnimateInterval() {
    return animateInterval;
  }

  public int getCurrentCount() {
    return currentCount;
  }

  public List<Integer> getPersonNumList() {
    return personNumList;
  }

  public List<Integer> getRemovedNumList() {
    return removedNumList;
  }
}
